/**
 * 项目名称:File类常用的方法
 *
 * @Author: 夏国倩
 * @Date: 2023/10/9 14:43
 * @Copyright
 */
package IO;
import java.io.File;
import java.io.IOException;

public class FileTest2 {
    public static void main(String[] args) {
        //创建文件对象
        File file = new File("Test.java");
        //获取文件的绝对路径，全路径
        String absolutePath = file.getAbsolutePath();
        //获取路径名字
        String path = file.getPath();
        //获取文件名称
        String fileName = file.getName();
        //获取文件大小
        long siza = file.length();

        System.out.println("absolutePath=" + absolutePath);
        System.out.println("Path=" + path);
        System.out.println("fileName=" + fileName);
        System.out.println("size=" + siza);

        System.out.println("-------------------------------");
        //对文件或者文件夹进行操作
        try {
            File file2 = new File("d:\\file.txt");
            //创建文件，如果文件不存在，创建true 如果文件存在，则不创建false 如果路径错误，IOException
            boolean b1 = file2.createNewFile();
            System.out.println("b1="+b1);

            //-----------删除文件---------- 注意：不去回收站。慎用
            boolean b2=file2.delete();
            System.out.println("b2="+b2);

            //----------需要判断文件是否存在-----------
            boolean b3 = file2.exists();
            System.out.println("b3="+b3);

            //----------对目录操作  创建、删除、判断----------
            File dir=new File("d:\\abc");
            //mkdir() 创建单个目录
            //mkdirs() 创建多级目录
            boolean b4=dir.mkdir();
            System.out.println("b4="+b4);

            File dir2=new File("d:\\a\\b\\c");
            boolean b5 = dir2.mkdirs();
            System.out.println("b5="+b5);

            //删除目录时，如果目录中有内容，无法直接删除
            boolean b6 = dir.delete();
            System.out.println("b6="+b6);

            //-----------判断文件、目录-------------
            File f=new File("e:\\javahaha");
            f.createNewFile(); //f.mkdir()
            System.out.println(f.isFile());
            System.out.println(f.isDirectory());

        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
}
